Efficient Incremental Static Analysis Using Path Abstraction

نویسندگان

  • Rashmi Mudduluru
  • Murali Krishna Ramanathan
چکیده

ion Rashmi Mudduluru and Murali Krishna Ramanathan {mudduluru.rashmi,muralikrishna}@csa.iisc.ernet.in Indian Institute of Science, Bangalore, India Abstract. Incremental static analysis involves analyzing changes to a version of a source code along with analyzing code regions that are semantically affected by the changes. Existing analysis tools that attempt Incremental static analysis involves analyzing changes to a version of a source code along with analyzing code regions that are semantically affected by the changes. Existing analysis tools that attempt to perform incremental analysis can perform redundant computations due to poor abstraction. In this paper, we design a novel and efficient incremental analysis algorithm for reducing the overall analysis time. We use a path abstraction that encodes different paths in the program as a set of constraints. The constraints encoded as boolean formulas are input to a SAT solver and the (un)satisfiability of the formulas drives the analysis further. While a majority of boolean formulas are similar across multiple versions, the problem of finding their equivalence is graph isomorphism complete. We address a relaxed version of the problem by designing efficient memoization techniques to identify equivalence of boolean formulas to improve the performance of the static analysis engine. Our experimental results on a number of large codebases (upto 87 KLoC) show a performance gain of upto 32% when incremental analysis is used. The overhead associated with identifying equivalence of boolean formulas is less (not more than 8.4%) than the overall reduction in analysis time.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Investigating The Seismic Response of Structural Walls Using Nonlinear Static and Incremental Dynamic Analyses

Structural walls commonly used as efficient structural elements to resist lateral and vertical loads. Diverse performance of bearing wall system in past earthquakes, motivates investigation on the adequacy of current seismic design provision for these walls. This study considers seismic performance of model walls of bearing wall and building frame systems designed as ordinary and special struct...

متن کامل

Incremental False Path Elimination for Static Software Analysis

In this work we introduce a novel approach for removing false positives in static program analysis. We present an incremental algorithm that investigates paths to failure locations with respect to feasibility. The feasibility test it done by interval constraint solving over a semantic abstraction of program paths. Sets of infeasible paths can be ruled out by enriching the analysis incrementally...

متن کامل

Application of static analyses for state-space reduction to the microcontroller binary code

This article describes the application of two abstraction techniques, namely dead variable reduction and path reduction, to microcontroller binary code in order to tackle the state-explosion problem in model checking. These abstraction techniques are based on static analyses, which have to cope with the peculiarities of binary code such as hardware dependencies, interrupts, recursion, and globa...

متن کامل

A Behavioral Subtyping, Specification Inheritance, and Modular Reasoning

Verification of a dynamically-dispatched method call, E .m(), seems to depend on E ’s dynamic type. To avoid case analysis and allow incremental development, object-oriented program verification uses supertype abstraction. That is, one reasons about E .m() using m’s specification for E ’s static type. Supertype abstraction is valid when each subtype in the program is a behavioral subtype. This ...

متن کامل

Propagation of Crack in Linear Elastic Materials with Considering Crack Path Correction Factor

Modeling of crack propagation by a finite element method under mixed mode conditions is of prime importance in the fracture mechanics. This article describes an application of finite element method to the analysis of mixed mode crack growth in linear elastic fracture mechanics. Crack - growth process is simulated by an incremental crack-extension analysis based on the maximum principal stress c...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2014